package com.molichuxing.services.infrastructure.service;

import com.molichuxing.framework.dto.Paged;
import com.molichuxing.framework.service.RootService;
import com.molichuxing.services.infrastructure.dto.request.create.LawsuitCreateDto;
import com.molichuxing.services.infrastructure.dto.response.LawsuitDto;
import com.molichuxing.services.infrastructure.dto.response.LawsuitListDto;

import java.util.Map;

/**
 * 法务诉讼service
 *
 * @Author zoumingyu
 * @Date 2020年07月28日
 */
public interface LawsuitService extends RootService {

    /**
     * 查询法务诉讼列表
     *
     * @param params   查询参数
     * @param pageNum  页数
     * @param pageSize 每页条数
     * @return Paged
     */
    Paged<LawsuitListDto> getPaged(Map<String, Object> params, int pageNum, int pageSize);

    /**
     * 新增诉讼
     *
     * @param createDto 新增参数
     * @return boolean
     */
    boolean create(LawsuitCreateDto createDto);

    /**
     * 完成诉讼
     *
     * @param orderCode 订单号
     * @return boolean
     */
    boolean modifyComplete(Long orderCode);

    /**
     * 查询诉讼信息
     *
     * @param orderCode 订单号
     * @return LawsuitDto
     */
    LawsuitDto getLawsuit(Long orderCode);

    /**
     * 查询诉讼数量
     *
     * @return int
     */
    int getLawsuitTotal();
}
